Skip to content

feat: accept devantler-tech/actions cosign subjects during the publish-workflow repoint#2399

Merged
devantler merged 1 commit into
mainfrom
claude/github-config-oidc-actions-subject
Jul 3, 2026
Merged

feat: accept devantler-tech/actions cosign subjects during the publish-workflow repoint#2399
devantler merged 1 commit into
mainfrom
claude/github-config-oidc-actions-subject

Conversation

@devantler

@devantler devantler commented Jul 3, 2026

Copy link
Copy Markdown
Contributor

🤖 Generated by the Daily AI Assistant

Why

Deployed artifacts are verified against where they were signed. Our signing workflows are moving homes (actions#425) — if a repo moves before the platform trusts the new home, its next release is rejected and its deployment stops.

What

Trusts artifacts signed from both the old and new home during the migration (org-config, wedding-app, AS Coaching). A follow-up drops the old home once everything has moved.

⚠️ Merge order: this PR before any repo that moves its signing (.github#80, ascoachingogvaner#79, wedding-app#149).

…sh-workflow repoint

The publish-manifests/publish-app reusable workflows are moving from
reusable-workflows into actions (actions#425); cosign OIDC subjects are
the signing workflow's path, so each artifact verifier must accept the
new path BEFORE its producer repoints, or verification breaks at the
next tag. Both subjects accepted during the transition; drop the old
entries once actions-signed artifacts have shipped.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Jul 3, 2026

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

Three Flux OCIRepository manifests were updated to expand or replace the spec.verify.matchOIDCIdentity subject allowlist, accepting OIDC subjects from the new devantler-tech/actions workflows alongside or instead of the legacy devantler-tech/reusable-workflows subjects, with transitional comments added.

Changes

OIDC subject allowlist migration

Layer / File(s) Summary
Add/replace matchOIDCIdentity subjects
k8s/bases/apps/ascoachingogvaner/oci-repository.yaml, k8s/bases/apps/github-config/oci-repository.yaml, k8s/bases/apps/wedding-app/oci-repository.yaml
Adds a second matchOIDCIdentity entry or replaces the subject regex to accept devantler-tech/actions workflow subjects, keeping legacy devantler-tech/reusable-workflows subjects during transition, with explanatory comments.

Estimated code review effort: 1 (Trivial) | ~5 minutes

Possibly related PRs

  • devantler-tech/platform#2319: Also modifies Flux OCIRepository matchOIDCIdentity subject-allowlist rules to accept GitHub Actions-based signing identities.
🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Title check ✅ Passed The title clearly matches the main change: accepting the new devantler-tech/actions cosign subjects during the workflow repoint.
Description check ✅ Passed The description accurately explains the migration and the temporary trust of both old and new signing homes for the affected apps.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch claude/github-config-oidc-actions-subject

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@k8s/bases/apps/ascoachingogvaner/oci-repository.yaml`:
- Around line 25-26: The OIDC subject matcher for the `publish-app.yaml`
workflow is too broad because `@.+` accepts any ref from
`devantler-tech/actions`. Tighten the regex in the `oci-repository.yaml` trust
policy so the `subject` in the `issuer`/`subject` rule only matches the intended
tag or branch ref for `publish-app.yaml`, using the existing matcher block as
the place to update.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 70e67deb-0781-430c-8de6-c8cdb1411c2b

📥 Commits

Reviewing files that changed from the base of the PR and between c7bf531 and f507fda.

📒 Files selected for processing (3)
  • k8s/bases/apps/ascoachingogvaner/oci-repository.yaml
  • k8s/bases/apps/github-config/oci-repository.yaml
  • k8s/bases/apps/wedding-app/oci-repository.yaml
📜 Review details
⏰ Context from checks skipped due to timeout. (3)
  • GitHub Check: 🧪 Validate Manifests
  • GitHub Check: Analyze (python)
  • GitHub Check: Analyze (python)
🧰 Additional context used
📓 Path-based instructions (3)
k8s/bases/**/*.yaml

📄 CodeRabbit inference engine (AGENTS.md)

Do not modify resources under k8s/bases/ directly from overlays; use Kustomize patches: in overlays instead.

Files:

  • k8s/bases/apps/wedding-app/oci-repository.yaml
  • k8s/bases/apps/github-config/oci-repository.yaml
  • k8s/bases/apps/ascoachingogvaner/oci-repository.yaml
k8s/**/*.yaml

📄 CodeRabbit inference engine (AGENTS.md)

Use one Kubernetes resource per file, except for the explicitly whitelisted vendored operator bundles.

Files:

  • k8s/bases/apps/wedding-app/oci-repository.yaml
  • k8s/bases/apps/github-config/oci-repository.yaml
  • k8s/bases/apps/ascoachingogvaner/oci-repository.yaml
k8s/**/*.{yaml,yml}

📄 CodeRabbit inference engine (AGENTS.md)

Name component-folder files after the resource Kind in kebab-case, and use ‹kind›-‹purpose›.yaml when a folder contains more than one resource of the same Kind.

Files:

  • k8s/bases/apps/wedding-app/oci-repository.yaml
  • k8s/bases/apps/github-config/oci-repository.yaml
  • k8s/bases/apps/ascoachingogvaner/oci-repository.yaml
🧠 Learnings (1)
📚 Learning: 2026-07-01T21:13:36.950Z
Learnt from: devantler
Repo: devantler-tech/platform PR: 2359
File: k8s/bases/apps/actual-budget/helm-release.yaml:62-111
Timestamp: 2026-07-01T21:13:36.950Z
Learning: When reviewing Kustomize/Helm YAML in this repo, keep the base vs provider overlay split: `k8s/bases/apps/**` and `k8s/bases/infrastructure/**` should contain each app’s full, environment-agnostic configuration (including base-level postRenderer Kustomize patches such as deployment strategy, topology spread, probes, and env injection). `k8s/providers/{docker,hetzner}/**` should only add small provider-specific deltas (e.g., `interval`, `persistence.size`) via patch files (like `k8s/providers/<provider>/apps/<app>/patches/helm-release-patch.yaml`). If configuration is identical across providers (e.g., OIDC/OAuth env vars where `${domain}` is resolved per cluster via envsubst), it belongs in the base and must not be duplicated into provider overlays.

Applied to files:

  • k8s/bases/apps/wedding-app/oci-repository.yaml
  • k8s/bases/apps/github-config/oci-repository.yaml
  • k8s/bases/apps/ascoachingogvaner/oci-repository.yaml
🔇 Additional comments (2)
k8s/bases/apps/wedding-app/oci-repository.yaml (1)

25-26: 🔒 Security & Privacy

No change needed here; the broader @.+ subject is intentional during the workflow migration and can be removed once the old signer is retired.

k8s/bases/apps/github-config/oci-repository.yaml (1)

38-39: 🔒 Security & Privacy

Clarify the trusted ref scope for devantler-tech/actions @.+ accepts any branch or tag for publish-manifests.yaml; if this workflow should only be trusted from a fixed ref, pin it here.

Comment thread k8s/bases/apps/ascoachingogvaner/oci-repository.yaml
@devantler devantler marked this pull request as ready for review July 3, 2026 03:45
@devantler devantler added this pull request to the merge queue Jul 3, 2026
Merged via the queue into main with commit efa0e84 Jul 3, 2026
15 checks passed
@devantler devantler deleted the claude/github-config-oidc-actions-subject branch July 3, 2026 03:48
@github-project-automation github-project-automation Bot moved this from 🏃🏻‍♂️ In Progress to ✅ Done in 🌊 Project Board Jul 3, 2026
@botantler-1

botantler-1 Bot commented Jul 3, 2026

Copy link
Copy Markdown
Contributor

🎉 This PR is included in version 1.95.0 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

Status: ✅ Done

Development

Successfully merging this pull request may close these issues.

1 participant